﻿//using System;
//using System.Collections;
//using System.Collections.Generic;
//using System.Linq;
//using System.Numerics;
//using System.Text;
//using System.Threading.Tasks;
//using static System.Net.Mime.MediaTypeNames;

//namespace SM2;

//public interface IRayControl
//{
//    Vector3 detectedPlayer(int ID);
//}
//public class RayControl : MonoBehaviour, IRayControl
//{
//    [SerializeField] private ImageProcessor imageProcessor;

//    Vector3[] Player = new Vector3[2];

//    void Start()
//    {

//        TOPAPI.CreateBackstage(null, Application.streamingAssetsPath + "/Backstage");
//        Task.Factory.StartNew(main);
//    }
//    void main()
//    {

//        while (true)
//        {
//            for (int i = 0; i < Player.Length; i++)
//            {
//                //开灯
//                TOPAPI.SetUartCommand("Drag" + i, 15);

//                //抓数据
//                List<Vector3> points = null;
//                int lossRay = 0;
//                while (points == null || points.Count == 0)
//                {
//                    points = imageProcessor.GetDetectedPoints();
//                    if (points.Count > 0)
//                    {
//                        Player[i] = points[0];
//                        Console.WriteLine(DateTime.Now.ToString()+ "找到玩家坐标"+i);
//                        break;
//                    }
//                    lossRay++;
//                    if (lossRay > 3)
//                    {
//                        //超时没找到跳出
//                        break;
//                    }
//                    Thread.Sleep(20);
//                }
//                //关灯
//                TOPAPI.SetUartCommand("Drag" + i, 0);
//                //Thread.Sleep(200);
//                lossRay = 0;
//                while (lossRay < 3)
//                {
//                    points = imageProcessor.GetDetectedPoints();
//                    if (points.Count == 0)
//                    {
//                        lossRay++;
//                    }
//                    if (points.Count > 0)
//                    {
//                        Player[i] = points[0];
//                    }
//                    Thread.Sleep(20);
//                    break;
//                }

//            }
//            // while (true) 最好加上 Thread.Sleep(20); 时间自己定
//            Thread.Sleep(20);
//        }
//    }

//    public Vector3 detectedPlayer(int ID)
//    {
//        return Player[ID];
//    }
//}

//internal class TOPAPI
//{
//    internal static void CreateBackstage(object value1, object value2)
//    {
//        throw new NotImplementedException();
//    }

//    internal static void SetUartCommand(string v1, int v2)
//    {
//        throw new NotImplementedException();
//    }
//}